Incremental Checkpointing based on Java Source Code Refactoring
نویسنده
چکیده
In this project, incremental checkpointing is developed specifically for Java programs. This checkpointing scheme has a flavor of source code refactoring, which performs almost all the (rule-based) transformation automatically, requiring few (or no in many cases) interaction with the programmer. Incremental checkpointing bases on a logging technique that records the change in states instead of complete snapshots of states, as is typically done in a serialization scheme. This enables it to be widely applicable to most existing Java programs. Performance loss due to the extra operations for this checkpointing is small enough to make it practical. Real-time property of the checkpointing system may be provable, which will be further explored in our future work.
منابع مشابه
Minimizing Refactoring Effort through Prioritization of Classes based on Historical, Architectural and Code Smell Information
Improving a software system’s internal structure through regular refactoring is considered vital for its long and healthy life. However, despite its amenities, refactoring is not readily adopted by software development teams in industry mainly due to strict project deadlines and limited resources. Hence, they look for optimal refactoring recommendations that would incur minimal effort overhead ...
متن کاملAn NMF Solution to the Java Refactoring Case
Lehman’s laws state that dedicated efforts must be spent for any software artifact to prevent a loss of quality. For code, such efforts are called refactoring operations and are an important aspect of many software engineers day-to-day business. Many of these refactoring operations are specified on a much higher abstraction level than the actual source code of a given language like Java. To be ...
متن کاملRealizing Change-Driven Consistency for Component Code, Architectural Models, and Contracts in Vitruvius
During the development of component-based software systems, it is often impractical or even impossible to include all development information into the source code. Instead, specialized languages are used to describe components and systems on different levels of abstraction or from different viewpoints: Component-based architecture models and contracts, for example, can be used to describe the s...
متن کاملSearch-based composed refactorings
Refactorings are commonly applied to source code to improve its structure and maintainability. Integrated development environments (IDEs) such as Eclipse or NetBeans offer refactoring support for various programming languages. Usually, the developer makes a particular selection in the source code, and chooses to apply one of the refactorings, which is then executed (with suitable pre-condition ...
متن کاملDesign Pattern Refactoring by Pretty-Printing
Most design patterns in the Gang-of-Four text can be written as a refactoring script – a programmatic sequence of refactorings.R is a new Java refactoring engine based on prettyprinting. It builds a main-memory, non-persistent database to encode containment relationships among Java entity declarations (e.g., packages, classes, methods), language features such as inheritance and modifiers, and p...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2005